package org.ch03.test04;

/**
 * 泛型方法的应用
 *
 * @author ZQX
 * @date 2025-03-26
 */
public class GenericTest {

    /**
     * 泛型方法
     *
     * @param sth
     * @param <T>
     */
    public <T> T sayHello(T sth) {
        // 泛型定义局部变量
        T a = sth;
        System.out.println(a.getClass().getSimpleName() + ":" + sth);
        return a ;
    }

    /**
     * 又一个泛型方法
     *
     * @param s1
     * @param s2
     * @param s3
     * @param <T>
     * @param <T2>
     * @param <T3>
     */
    public <T, T2, T3> void sayGoodBye(T s1, T2 s2, T3 s3) {
        System.out.println(s1.getClass().getName() + ":" + s1);
        System.out.println(s2.getClass().getName() + ":" + s2);
        System.out.println(s3.getClass().getName() + ":" + s3);
    }

}
